package com.devilvan.betrice.lol.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author Evad.Wu
 * @Description LOL-对局英雄信息 数据传输对象
 * @date 2022-09-30
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "LOL-对局英雄信息 数据传输对象")
public class LolBattleChampionDto {
    @Schema(description = "对局ID")
    private Long gameId;
    @Schema(description = "QQ号")
    private String openId;
    @Schema(description = "用户名")
    private String name;
    @Schema(description = "是否胜利（1-胜利，0-失败）")
    private Boolean win;
    @Schema(description = "英雄ID")
    private Integer championId;
    @Schema(description = "英雄熟练度")
    private Long championUsedExp;
    @Schema(description = "几号皮肤")
    private Integer skinIndex;
    @Schema(description = "杀敌数")
    private Integer championsKilled;
    @Schema(description = "死亡数")
    private Integer numDeaths;
    @Schema(description = "助攻数")
    private Integer assists;
    @Schema(description = "蓝色方/红色方")
    private String team;
    @Schema(description = "小龙击杀数")
    private Integer dragonKills;
    @Schema(description = "位置")
    private String position;
    @Schema(description = "等级")
    private Integer level;
    @Schema(description = "补刀")
    private Integer allMinionsKilled;
    @Schema(description = "击杀大龙数量")
    private Integer baronKills;
    @Schema(description = "最大连杀")
    private Integer largestKillingSpree;
    @Schema(description = "最大多杀")
    private Integer largestMultiKill;
    @Schema(description = "双杀数")
    private Integer doubleKills;
    @Schema(description = "三杀数")
    private Integer tripleKills;
    @Schema(description = "四杀数")
    private Integer quadraKills;
    @Schema(description = "五杀数")
    private Integer pentaKills;
    @Schema(description = "控制得分")
    private Integer timeCcingOthers;
    @Schema(description = "对英雄造成的总伤害")
    private Integer totalDamageToChampions;
    @Schema(description = "对英雄造成的物理伤害")
    private Integer physicalDamageToChampions;
    @Schema(description = "对英雄造成的魔法伤害")
    private Integer magicDamageToChampions;
    @Schema(description = "对英雄的真实伤害")
    private Integer trueDamageToChampions;
    @Schema(description = "总输出伤害")
    private Integer totalDamageDealt;
    @Schema(description = "总物理伤害")
    private Integer physicalDamageDealtPlayer;
    @Schema(description = "总魔法伤害")
    private Integer magicDamageDealtPlayer;
    @Schema(description = "最大暴击伤害")
    private Integer largestCriticalStrike;
    @Schema(description = "总治疗数")
    private Integer totalHealth;
    @Schema(description = "总承受伤害")
    private Integer totalDamageTaken;
    @Schema(description = "总承受物理伤害")
    private Integer physicalDamageTaken;
    @Schema(description = "总承受魔法伤害")
    private Integer magicDamageTaken;
    @Schema(description = "购买消耗品数")
    private Integer consumablesPurchased;
    @Schema(description = "视野得分")
    private Integer visionScore;
    @Schema(description = "插眼数")
    private Integer wardPlaced;
    @Schema(description = "排眼数")
    private Integer wardKilled;
    @Schema(description = "购买真眼数")
    private Integer visionWardsBoughtInGame;
    @Schema(description = "扫描到的眼的数量")
    private Integer wardPlacedDetector;
    @Schema(description = "金币获取数")
    private Integer goldEarned;
    @Schema(description = "金币消费数")
    private Integer goldSpent;
    @Schema(description = "击杀小兵数")
    private Integer minionsKilled;
    @Schema(description = "击杀野怪数量")
    private Integer neutralMinionsKilled;
    @Schema(description = "推塔数")
    private Integer turretsKilled;
    @Schema(description = "破坏兵营数量")
    private Integer barracksKilled;
    @Schema(description = "死亡时间（秒）")
    private Integer totalTimeSpentDead;
    @Schema(description = "经验值")
    private Integer exp;
    @Schema(description = "游戏评分")
    private Integer gameScore;
    @Schema(description = "基石符文ID")
    private Integer keyStoneId;
    @Schema(description = "装备栏1")
    private Integer item0;
    @Schema(description = "装备栏2")
    private Integer item1;
    @Schema(description = "装备栏3")
    private Integer item2;
    @Schema(description = "装备栏4")
    private Integer item3;
    @Schema(description = "装备栏5")
    private Integer item4;
    @Schema(description = "装备栏6")
    private Integer item5;
    @Schema(description = "装备栏7")
    private Integer item6;
    @Schema(description = "Q技能使用次数")
    private Integer spell1Cast;
    @Schema(description = "W技能使用次数")
    private Integer spell2Cast;
    @Schema(description = "E技能使用次数")
    private Integer spell3Cast;
    @Schema(description = "R技能使用次数")
    private Integer spell4Cast;
}
